package com.session03;

import java.util.Scanner;

public class Test1 {
    public static void main(String[] args) {
/*      实现一个“高低数”的猜数字游戏。程序一启动就在内存生成一个50-99之间的随机数，不给用户看；
        然后接收用户输入，用用户输入的数字和该随机数比较，分别有：”猜大了“，“猜小了”，“猜对了”三种情况。
        猜大或猜小，用户继续猜，总共有5次机会；猜对了，结束游戏，恭喜用户。5次机会用完，都没有猜对，打印正确答案，并羞辱用户！！*/
/*      添加用户输入校验，要求用户输入必须是50-99之间的数；
        如果用户输入不合法，那么提示用户输入非法，重新猜测，但本次失败不计入5次机会之内。*/
        int random = (int) (Math.random() * 50) + 50;
        System.out.println(random);
        int flag = 0, n = 0;
        while (flag < 5) {
            Scanner num = new Scanner(System.in);
            n = num.nextInt();
            if (n >= 50 && n <= 99) {
                if (n > random) {
                    System.out.println("猜大了");
                } else if (n < random) {
                    System.out.println("猜小了");
                } else {
                    System.out.println("猜对了");
                    break;
                }
            } else {
                System.out.println("输入数据不合法");
                //输入不合理的数据不计数
                flag--;
            }
            flag++;
            System.out.println("你还有" + (5 - flag) + "次机会");
            System.out.println("");
        }
        if (flag == 5 && n != random) {
            System.out.println("你真笨啊！");
            System.out.println("正确答案为：" + random);
        }
    }
}
